Service agents often interact with users to resolve user problems or issues. For example, a user may communicate with a service agent in order to change or cancel an order placed through an electronic commerce application. As another example, a user may communicate with a service agent in order to receive technical support. However, maintaining large number of service agents can be expensive. Moreover, the level of expertise among individual service agents can vary, as can the customer service skills of individual service agents.